﻿using Newtonsoft.Json;
using PhysicalExamination5.Model.SystemSetting;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PhysicalExamination5.Interface.SystemSetting
{
    public interface IJueSeUser
    {
        /// <summary>
        /// 查询角色信息
        /// </summary>
        /// <returns></returns>
        public string GetSelJueSeAll();
        /// <summary>
        /// 根据角色ID查询用户和权限
        /// </summary>
        /// <param name="strJuseId"></param>
        /// <returns></returns>
        public string GetSelYongHu(string strJuseId);
        /// <summary>
        /// 查询全部权限
        /// </summary>
        /// <returns></returns>
        public string GetSelQuanXian(string strYuanQu);
        /// <summary>
        /// 角色新增
        /// </summary>
        /// <param name="jueSe"></param>
        /// <param name="strYuanQuQianZhui"></param>
        /// <param name="strXiTongMingCheng"></param>
        /// <returns></returns>
        public string PostJueSeAdd(JueSeClass jueSe, string strYuanQuQianZhui, string strXiTongMingCheng);
        /// <summary>
        /// 角色修改
        /// </summary>
        /// <param name="jueSe"></param>
        /// <returns></returns>
        public string PutJueSeUpdate(JueSeClass jueSe);
        /// <summary>
        /// 角色删除
        /// </summary>
        /// <param name="jueSe"></param>
        /// <returns></returns>
        public string DeleteJueSeDelete(JueSeClass jueSe);
        /// <summary>
        /// 用户新增
        /// </summary>
        /// <param name="userClass"></param>
        /// <returns></returns>
        public string PostUserAdd(UserClass userClass, string strYuanQuQianZhui);
        /// <summary>
        /// 用户修改
        /// </summary>
        /// <param name="userClass"></param>
        /// <returns></returns>
        public string PutUserUpdate(UserClass userClass);
        /// <summary>
        /// 用户删除
        /// </summary>
        /// <param name="yongHu"></param>
        /// <returns></returns>
        public string DeleteUserDelete(YongHuClass yongHu);
        /// <summary>
        /// 解除用户锁定
        /// </summary>
        /// <param name="yongHu"></param>
        /// <returns></returns>
        public string PutJieChuSuoDing(YongHuClass yongHu);
        /// <summary>
        /// 搜索特定用户
        /// </summary>
        /// <param name="strUser"></param>
        /// <returns></returns>
        public string GetSelUser(string strUser);
        /// <summary>
        /// 角色保存权限
        /// </summary>
        /// <param name="SaveJuSeQuanXianClass"></param>
        /// <returns></returns>
        public string PostSaveJuSeQuanXian(SaveJuSeQuanXianClass SaveJuSeQuanXianClass);
        /// <summary>
        /// 用户批量权限调整
        /// </summary>
        /// <returns></returns>
        public string PostUserZhuiJiaQuanXian(UserQuanXianClass userQuanXian);
        /// <summary>
        /// 用户角色顺序调整
        /// </summary>
        /// <param name="userJueSeShunXu"></param>
        /// <returns></returns>
        public string PutUserJueSeTiaoZhengShunXu(UserJueSeShunXuClass userJueSeShunXu);
    }
}
